-
Notifications
You must be signed in to change notification settings - Fork 258
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Retry decryptions based on the room key stream of the OlmMachine #4348
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #4348 +/- ##
==========================================
+ Coverage 85.31% 85.39% +0.07%
==========================================
Files 283 283
Lines 31452 31472 +20
==========================================
+ Hits 26833 26875 +42
+ Misses 4619 4597 -22 ☔ View full report in Codecov by Sentry. |
So this fixes EXA but not EXI? |
Yes. |
Gah, trying to write a test for this and I just realized that I need to delay the delivery of the room key so I can have the following conditions:
I guess I'll have to write the test in complement-crypto. |
Our testing suite has something like this: matrix-rust-sdk/testing/matrix-sdk-integration-testing/src/tests/sliding_sync/room.rs Lines 682 to 729 in a6e1f05
ToDevice events are evicted from a server response on purpose, and under the control of the testing code. |
Well yes, wiremock can also delay responses, but then I'd have to mock a lot of things to get the E2EE and notification client working. |
66d6f49
to
cbdfb27
Compare
Alright, backpaginating the event into the timeline worked as well. |
1369f6d
to
c8270ce
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes LGTM, thanks!
3ee76a5
to
4280f21
Compare
This is a partial fix for #4189.
The fix works if you don't use the cross-process lock, otherwise the stream gets destroyed and updates don't come in anymore.
Opening as a draft, still needs a test.